#include "ManagedLasoProvider.h"

double SmartMathLibrary::LasoPack::ManagedLasoProvider::log(double x)
{
  return System::Math::Log(x);
}

double SmartMathLibrary::LasoPack::ManagedLasoProvider::sqrt(double x)
{
  return System::Math::Sqrt(x);
}

double SmartMathLibrary::LasoPack::ManagedLasoProvider::atan(double x)
{
  return System::Math::Atan(x);
}

double SmartMathLibrary::LasoPack::ManagedLasoProvider::pow_dd(double x, double y)
{
  return System::Math::Pow(x, y);
}

double SmartMathLibrary::LasoPack::ManagedLasoProvider::pow_dd(doublereal *ap,
  doublereal *bp)
{
  return System::Math::Pow(*ap,  *bp);
}

double SmartMathLibrary::LasoPack::ManagedLasoProvider::d_sign(doublereal *a,
  doublereal *b)
{
  double x;
  x = (*a >= 0 ?  *a:  -  *a);
  return (*b >= 0 ? x :  - x);
}

double SmartMathLibrary::LasoPack::ManagedLasoProvider::r_sign(real *a, real *b)
{
  double x;
  x = (*a >= 0 ?  *a:  -  *a);
  return (*b >= 0 ? x :  - x);
}
